1. Field of the Invention
The present invention relates to a de-interleave circuit and, more particularly, to a de-interleave circuit suitable for use in a digital data regenerating apparatus of a disk player capable of playing back a digital audio disk called a minidisk.
2. Description of the Related Art
Compact disks (hereinafter called "CD") are widely spread as digital audio disk providing high quality of sound. Recently, however, a minidisk (hereinafter called "MD") which is much smaller than CD in size and yet is comparable to the CD in playback time because of its having its data recorded through data compression has been developed and is being put into practice.
The MD player is employing a magnetooptic recording system. Further, the interleave method used in the MD system is adapted to facilitate "waveform joining" and provide an interleave effect equal to that obtainable in the CD system.
The sequence of de-interleave in the MD system is shown in FIG. 9. On the left of FIG. 9, there are shown the data for 1 frame regenerated from the disk. The data regenerated at the start of the frame following the subcode is the 8-bit data W12.sub.n, A. The data generated next is the data W12.sub.n, B.
In the above, n represents the frame number, P.sub.n represents the C1 parity, and Q.sub.n represents the C2 parity. Of the numerals enclosed with the rectangle, "1" represents a delay of 1 frame and "27D" represents a delay of 108 frames (D=4).
The C1 correction is applied to the data W12.sub.n, A, W12.sub.n, B obtained 1 frame before, W12.sub.n+1, A, W12.sub.n+1, B obtained 1 frame before, . . . , in order of mention and one coded word is provided by the data of 32 bytes. When correction cannot be achieved by the process of C1 correction (multiple error), C1 flags (C1 pointers) are set up for the 32 bytes of the C1. When the RAM used is that having a data width of 8 bits, only 1 bit out of them is used as the C1 flag.
The C2 correction is applied to the data W12.sub.n, A obtained 108 frames before, W12.sub.n, B obtained 105 frames before, . . . , in order of mention and one coded word is provided by the data of 28 bytes. In the process of the C2 correction, the C1 flag is utilized for calculation of the C2 error correction to thereby prevent false correction or utilized for erasure correction.
Further, in most cases where error correction has been unachievable by the C2 correction, the C1 flag of each data is used. More specifically, when there is set up a C1 flag, a C2 pointer (C2 flag) is set up as the error data. The C2 pointer is attached to each 8-bit data to be paired therewith.
When one C2 pointer (1 byte) is assigned to one data as described above, number of bytes calculated as under are required as the necessary space of the buffer RAM for error correction:
(1) From writing RF signal to C1 correction: 32+16=48 bytes, PA1 (2) From C1 correction to the C2 correction: 27D+26D+. . . +3D+2D+1D+27D=1,620 bytes, PA1 (3) From the C2 correction to D/A outputting
where the last 27D is those for the C1 pointers,
{(27D+26D+. . .+2D+1D)+12}+{(27D+26D+. . . +2D+1D)+12}=2,616 bytes,
where the first half in parentheses "{ }" is for the data and the second half in parentheses is for the C2 pointers, while 12D to 15D, which are related to the parity Q, can be omitted.
From (1)+(2)+(3) above, 4,284 bytes become necessary as the space of the buffer RAM. Namely, as the total capacity, 34,272 bits are required of the buffer RAM.
In the EFM (Eight to Fourteen Modulation) demodulation of the CD player, 1 byte for the C2 pointer has been used for 2 bytes of data which have undergone the C2 correction in the error correction. Further, the interval between the C2 correction and the outputting of the data to the D/A converter has been less than 2 frames and, hence, the capacity has been enough if it can retain the C2 pointers only for a period of time less than two frames. Therefore, there has not been a big problem with CD players.
In the de-interleave in the MD player, however, the C2 pointer has to be retained 109 (=27D+1) frames at the maximum and the memory space of 34,272 bits is required of the error correcting RAM as described above. Accordingly, a 32K-bit buffer RAM was insufficient in capacity and a 64K-bit buffer RAM has to be used.